package com.movie.ticket.sale.feignCients;

import com.movie.ticket.sale.moviecommon.common.Result;
import com.movie.ticket.sale.pram.UserPram;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;

/**
 * @BelongsProject: movie-user
 * @BelongsPackage: com.movie.ticket.sale
 * @Author: lyl
 * @CreateTime: 2020-12-11 14:45
 * @Description:
 */
@FeignClient("movie-user")
public interface userFeign {
    @GetMapping("getOne")
    public Result getOne();
    @PutMapping("changeUser")
    public Result changeUser(UserPram userPram);
    @PutMapping("changeUserHead")
    public Result changeUserHead(@RequestParam("path") MultipartFile path);
    @GetMapping("getComments")
    public Result getComments();
    @DeleteMapping("deleteComment")
    public Result deleteComment(@RequestParam("commentId")int commentId);
    @GetMapping("getUserOrders")
    public Result getUserOrders(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @GetMapping("orderState")
    public Result getOrderState(@RequestParam("orderId") int orderId);
    @GetMapping("getTickets")
    public Result getTickets(@RequestParam("orderId") int orderId);
    @PutMapping("changeSeat")
    public Result changeSeat(@RequestParam("orderId")int orderId,@RequestParam("seats") String[] seats,@RequestParam("peridId")Integer peridId);
    @PostMapping("refund")
    public Result refund(@RequestParam("ticketIds")int[] ticketIds);
    @PostMapping("addComment")
    public Result addComment(@RequestParam("orderId")int orderId, @RequestParam("comment")String comment,@RequestParam("paths") MultipartFile[] paths,@RequestParam("degree") Double degree);
    @GetMapping("getAllDiscounts")
    public Result getAllDiscounts(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @PutMapping("changeDiscount")
    public Result changeDiscount(@RequestParam("discountId")int discountId);
    @GetMapping("getDiscount")
    public Result getDiscount(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @GetMapping("getVip")
    public Result getVip(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @PostMapping("buyVip")
    public Result buyVip(@RequestParam("vipId") int vipId,@RequestParam("mount")int mount);
    @GetMapping("getCinemaVip")
    public Result getCinemaVip(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @GetMapping("login")
    public Result login(@RequestParam("tel")String tel ,@RequestParam("password")String password);
    @GetMapping("register")
    public Result register(@RequestParam("tel")String tel , @RequestParam("password")String password, @RequestParam("code")String code);
    @GetMapping("getComplaint")
    public Result getComplaint(@RequestParam(defaultValue = "1")int currPage,@RequestParam(defaultValue = "5")int number);
    @DeleteMapping("deleteComplaint")
    public Result deleteComplaint(@RequestParam("id")int id );
    @PostMapping("addComplaint")
    public Result addComplaint(@RequestParam("orderId")int orderId,@RequestParam("complaint")String content );
   @GetMapping("getVips")
    public Result getVips(@RequestParam(defaultValue = "1") int currPage, @RequestParam(defaultValue = "5") int number);
   @GetMapping("addSuo")
   public Result addSuo(@RequestParam("test") int[] test);

}
